Перейти к основному содержимому

10.5 Настройка Route-map

5.5.1 Введение в функционал

Route-map используется для управления и изменения информации о маршрутах. Команда route-map позволяет перераспределять маршруты. Она включает список команд match и set:

  • match - указывает условия, при которых перераспределение разрешено.
  • set - задает действия перераспределения, которые выполняются, если условия команды match выполняются.

Route-map предоставляет детальный контроль за распределением маршрутов между процессами маршрутизации и позволяет выполнять политику маршрутизации, что может перенаправлять пакеты по маршруту, отличающемуся от очевидного кратчайшего пути.

Если параметр permit указан и критерии match выполнены, маршрут перераспределяется в соответствии с действиями set. Если критерии не выполнены, проверяется следующая строка с тем же именем. Если параметр deny указан и критерии выполнены, маршрут не перераспределяется, и следующие строки не проверяются.

Каждая Route-map завершается неявным deny. Параметр sequence используется для указания позиции новой записи в уже существующем списке с тем же именем.

5.5.2 Конфигурация

Настройка Route-map для OSPF

Шаг 1: Войдите в режим конфигурации

Switch# configure terminal

Шаг 2: Создайте Route-map и задайте правило и действие

Примечание

Имя route-map может содержать до 20 символов, в данном примере имя задано как "abc". Поддерживаются два действия: "permit" и "deny". Действие по умолчанию — "permit". Допустимый диапазон номеров последовательности — от 1 до 65535. Если номер последовательности не указан при создании первого правила route-map, система автоматически назначает номер 10.

Switch(config)# route-map abc permit
Switch(config-route-map)# match metric 20
Switch(config-route-map)# set tag 2
Switch(config-route-map)# exit

Switch(config)# route-map abc permit 20
Switch(config-route-map)# exit

Шаг 3: Войдите в режим настройки OSPF, перераспределите маршруты RIP и примените Route-map

Switch(config)# router ospf 100
Switch(config-router)# redistribute rip route-map abc
Switch(config-router)# exit

Шаг 4: Выйдите из режима конфигурации

Switch(config)# end

Шаг 5: Проверка

Для отображения Route-map используйте:

Switch# show route-map
route-map abc, permit, sequence 10
Match clauses:
metric 20
Set clauses:
tag 2
route-map abc, permit, sequence 20
Match clauses:
Set clauses:

Настройка Route-map для BGP

Шаг 1: Войдите в режим конфигурации

Switch# configure terminal

Шаг 2: Создайте IP access list:

Switch(config)# ip access-list acl1
Switch(config-ip-acl)# permit any 3.3.3.0 0.0.0.255 any
Switch(config-ip-acl)# exit

Шаг 3: Создайте Route-map для соответствия access list и задайте правило и действие

Switch(config)# route-map abc permit
Switch(config-route-map)# match ip address acl1
Switch(config-route-map)# set local-preference 200
Switch(config-route-map)# exit

Switch(config)# route-map abc permit 20
Switch(config-route-map)# exit

Шаг 4: Войдите в режим настройки BGP и примените Route-map

Switch(config)# router bgp 1
Switch(config-router)# neighbor 1.1.1.2 remote-as 1
Switch(config-router)# neighbor 1.1.1.2 route-map abc out
Switch(config-router)# network 2.2.2.2/32
Switch(config-router)# network 3.3.3.3/32
Switch(config-router)# exit

Шаг 5: Выйдите из режима конфигурации

Switch(config)# end

Шаг 6: Проверка

DUT1# show route-map
route-map abc, permit, sequence 10
Match clauses:
ip address acl1
Set clauses:
local-preference 200
route-map abc, permit, sequence 20
Match clauses:
Set clauses:
DUT2# show ip bgp
BGP table version is 6, local router ID is 1.1.1.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*>i2.2.2.2/32 1.1.1.1 0 100 0 i
*>i3.3.3.3/32 1.1.1.1 0 200 0 i